home *** CD-ROM | disk | FTP | other *** search
/ The CICA Windows Explosion! / The CICA Windows Explosion! - Disc 2.iso / misc / btngo.zip / BTNGOC.ZIP / INI.CPP < prev    next >
C/C++ Source or Header  |  1993-09-28  |  1KB  |  47 lines

  1. #include<windows.h>
  2. #include"ini.hpp"
  3. IniFile::IniFile(){
  4.     file_set_up=0;
  5. }
  6. void IniFile::set_instance(HINSTANCE instance){
  7.     if(GetModuleFileName(instance,filename,255)){
  8.         char *cp=filename;
  9.         int chars_in_filename=0;
  10.         while(*cp){
  11.             cp++;
  12.             chars_in_filename++;
  13.         }
  14.         if(chars_in_filename<5||cp[-4]!='.')return;
  15.         cp[-1]='I';
  16.         cp[-2]='N';
  17.         cp[-3]='I';
  18.         file_set_up=1;
  19.     }
  20. }
  21. IniFile::~IniFile(){
  22. }
  23. int IniFile::get_screen_numbers(char *grp_file,int& x,int& y,int& sb_ontop){
  24.     if(!file_set_up)return 0;
  25.     UINT X,Y,S;
  26.     X=GetPrivateProfileInt(grp_file,"X",9990,filename);
  27.     Y=GetPrivateProfileInt(grp_file,"Y",9990,filename);
  28.     S=GetPrivateProfileInt(grp_file,"OnTop",9990,filename);
  29.     if(Y==9990||X==9990||S==9990)return 0;
  30.     x=X;
  31.     y=Y;
  32.     sb_ontop=S;
  33.     return 1;
  34. }
  35. void IniFile::write_screen_numbers(char *grp_file,HWND hwnd,int ontop){
  36.     if(!file_set_up)return;
  37.     char arr[10];
  38.     RECT rc;
  39.     GetWindowRect(hwnd,&rc);
  40.     wsprintf(arr,"%d",rc.left); // X coord
  41.     if(!WritePrivateProfileString(grp_file,"X",arr,filename))return;
  42.     wsprintf(arr,"%d",rc.top); // Y coord
  43.     if(!WritePrivateProfileString(grp_file,"Y",arr,filename))return;
  44.     wsprintf(arr,"%d",ontop);
  45.     WritePrivateProfileString(grp_file,"OnTop",arr,filename);
  46. }
  47.